#ifndef _VN_SFML_MUSIC_H_
#define _VN_SFML_MUSIC_H_

#include "Music.h"
#include "SFML\Audio.hpp"

namespace vn
{
	class SFMLMusic : public vn::Music
	{
	public:
		SFMLMusic(void);
		virtual ~SFMLMusic(void);

		void setMusicFile(const std::string& p_filepath);

		virtual void play();
		virtual void pause();
		virtual void stop();

		virtual void setLoop(bool p_value);
		virtual void setVolume(float p_volume);
		virtual void setPitch(float p_pitch);

		virtual bool getLoop();
		virtual float getVolume();
		virtual float getPitch();

		virtual vn::AudioState getAudioState();

	protected:
		sf::Music m_music;
	};
}

#endif // _VN_SFML_MUSIC_H_